/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package metier;

/**
 *
 * @author Quipu-Team
 */
public abstract class TypeEnseignement {

        /* Attributs priv�s */
    private int nombreHeuresEq=0;       /*Le nombre d'heures �quivalent TD du type enseignement*/
    private String nom=null;            /*Le nom correspondant au type enseignement*/
    private int id=0;                   /*Identificateur unique du type enseignement*/


    
    /* Constructeurs */
    public TypeEnseignement() {
    }

    /**
         * @param IDType
         */
    protected TypeEnseignement(int IDType) {
        this.id = IDType;
    }

    /**
         * @param nombreHeuresEq
         * @param nom
         * @param IDType
         */
    protected TypeEnseignement(int nombreHeuresEq, String nom, int IDType) {
        this.nombreHeuresEq = nombreHeuresEq;
        this.nom = nom;
        this.id = IDType;
    }
    
    /**
         * @param nombreHeuresEq
         * @param nom
         */
    public TypeEnseignement(int nombreHeuresEq, String nom) {
        this.nombreHeuresEq = nombreHeuresEq;
        this.nom = nom;
    }
    
    /**
         * @return the nom nom de l'UE
         */
    public String getNom() {
        return nom;
    }

    /**
         * @param nom
         *            the nom to set
         */
    public void setNom(String nom) {
        this.nom = nom;
    }

    /**
         * @return the nombreHeuresEq nombre d'heures �quivalent TD de l'UE
         */
    public int getNombreHeuresEq() {
        return nombreHeuresEq;
    }

    /**
         * @param nombreHeuresEq
         *            the nombreHeuresEq to set
         */
    public void setNombreHeures(int nombreHeuresEq) {
        this.nombreHeuresEq = nombreHeuresEq;
    }

    /**
         * @return the IDType IDType de l'UE
         */
    public int getId() {
        return id;
    }

    /**
         * @param IDType
         *            the id to set
         */
    protected void setId(int IDType) {
        this.id = IDType;
    }

    // M�thodes abstraites
    /**
     * @throws ExceptionMetier
     * M�thode qui permet d'ins�rer l'objet dans le syst�me de stockage
     */
    public abstract void insert() throws ExceptionMetier;

    /**
     * @throws ExceptionMetier
     * M�thode qui permet de mettre � jour l'objet dans le syst�me de stockage
     */
    public abstract void update() throws ExceptionMetier;

    /**
     * @throws ExceptionMetier
     * M�thode qui permet de supprimer l'objet dans le syst�me de stockage
     */
    public abstract void delete() throws ExceptionMetier;
    
    /**
    * @throws ExceptionMetier
    * @param id identifiant du SEE a charger
    */
    public abstract void load(int IDType) throws ExceptionMetier;


}
